Advances in computer graphics technology in recent years have led to the appearance of game devices which display virtually generated space (hereinafter referred to as ‘virtual space’) as an image observed from one viewpoint within the space (hereinafter referred to as ‘virtual image’). Among such game devices, those which are based on motor-bike and similar races continue to be very popular.
In the following description, the word ‘bike’ is to be taken to signify a motor-bike (moving object) which is displayed in virtual space as a running model for playing the game. In particular, the motor-bike which the player himself operates will be referred to as a ‘specific bike’, while bikes other than the specific bike which compete with the specific bike will be referred to as ‘other bikes’. Similarly, the word ‘run(ning)’ is to be taken to signify the conceptual running of the bike along a ‘course’ set within virtual space. Video game devices of this sort comprise an input device which is modelled on a real bike and generates operating signals when operated by the player, a data processing device (CPU) which controls the running of the bike in accordance with operating signals supplied from the input device on the basis of image and other data determining the position of objects (including both moving objects such as people or cars, and static objects such as buildings or stones), and a display device which generates the image of the bike and displays it together with background and other images on a screen. Image data and the various types of data which are necessary in order to control the running of the bike are stored in a memory.
Playing the game consists in causing the specific bike operated by the player to run along a course together with other bikes, whereof the running is controlled by the game device, the two competing to win the track record. The player manages the corners (curves) in the course by tilting the input device in the same way as if he were riding a motor-bike along a real racing course, and operates the ‘throttle’ and ‘brakes’ on the input device. The data processing device specifies the position of the specific bike on the basis of the operating signals which are supplied in accordance with the operation of the player, and also specifies the running positions of the other bikes. The display device generates image data showing the virtual space from the position of the specific bike on the basis of image data of the other bikes, background and other details within the virtual space as specified by the data processing device. The player operates the input device while watching the image which is displayed on a screen fitted to the front of the input device. Thus, the player is able to enjoy playing the game with a sensation resembling that of driving a real motor-bike.
Hitherto it has been normal for track data, which is programmed in advance into the memory, to be used to run the other bikes with which the player competes. This track data consists of rows of position coordinates along the course. The data processing device reads these position coordinates with a fixed timing, and controls the running of the other bikes in such a way that they pass through the coordinates which have been read.
However, this conventional video game device suffers from the following drawback.
Details of the path cannot be altered once they have been programmed. If a player is accustomed to the trajectories along which the other bikes run in accordance with this track data, it becomes easy for him to win as he gains in experience. This means that the game becomes simple for him, and he loses interest. If large numbers of players become experienced in the same type of game in this manner, the popularity of the game soon wanes.
One possible way of counteracting this would be for the track data of the bike which a player has actually operated to be used without modification as track data for the other bikes. However, it is thought that doing this would result in an unnatural image being displayed.
The track data of a specific bike is obtained in the form of a row of position coordinates which have been sampled with a fixed timing along the route which that bike traversed when operated by a player. To utilise these as the path for another bike involves reading this row of position coordinates in the correct order with a fixed timing, and controlling the running of the other bike in such a manner that it passes through the position coordinates which have been read.
However, it is not always the case that the player's operations are perfect, and he will often collide into the side wall (the fence or wall which separates the spectators from the course) or into other bikes. If the running of the other bikes is to be controlled on the basis of track data which has been obtained under conditions of operation of this sort, the same running conditions will be reproduced as when the data was obtained. In other words, the other bikes which are running on the basis of this track data will run in an unnatural manner, colliding into the side wall or into objects irrespective of whether there are other bikes in the vicinity.
Consequently, in order to solve this drawback, it becomes necessary to correct the track data where this causes it to look as if the bike has left the course, and to generate data so that the bike does not stop even if the path is such that two bikes collide with each other and suddenly stop.
Moreover, as FIG. 9A demonstrates, conventional video game devices generate the image on the presupposition that the viewpoint used for generating the virtual image while running (shown by the camera C) is located on the bike.
However, an image obtained in this manner does not necessarily reflect the image which someone actually riding on a bike normally perceives. To take the example of cornering during a race, an actual rider will tilt the body of the bike and lean outwards, while keeping his head vertical. Thus, in the view as perceived by the rider the horizon scarcely tilts at all.
In conventional video games, on the other hand, since the camera is located on the specific bike B as shown in FIG. 9A, the camera tilts together with the specific bike B in relation to the road surface when the bike itself tilts while cornering, and an image is generated in which the whole horizon tilts (FIG. 9B).
If the bike topples over, the rider should really be thrown off it, and the image should be displayed from the perspective of the rider who has been thrown. However, if the camera is situated on the bike, the image which is displayed is as viewed from the toppled bike. Thus, in order to solve drawbacks of this kind, the camera (viewpoint) needs to be relocated where an actual rider perceives it.